Negros estão mais sujeitos à rotatividade de trabalhos? Se sim, isso se explica por variáveis observáveis como escolaridade ou não? E mulheres? Essas são questões muito comuns entre economistas do trabalho e podem ser atacadas de várias maneiras. Uma delas, que eu acho particularmente interessante, é com Análise de Sobrevivência.

Análise de Sobrevivência é um termo bem amplo para descrever modelos que servem para explorar tempo até que um evento de interesse aconteça. Até onde eu sei esse tipo de técnica nasceu em pesquisas clínicas, para melhor entender efeitos de certos tratamentos contra câncer. Hoje é aplicado por cientistas sociais em análise de eventos, por engenheiros para entender melhor falha e confiabilidade de sistemas e por economistas, principalmente para estudar desemprego.

Curvas de Kaplan-Meier, um pouco de teoria

A função de sobrevivência, doravante \(S(t)\) é um mapa que relaciona a chance de não acontecimento de um evento no momento de tempo \(t\). A função hazard - acho que “risco” seja uma tradução apropriada? - relaciona a probabilidade de um evento acontecer no momento \(t\). Esse evento pode ser morte do paciente, uma revolução, falha de um sistema mecânica ou, no nosso caso, desemprego.

Uma das ferramentas iniciais de Análise de Sobrevivência é a Curva de Kaplan-Meier de sobrevivência. A Curva KM tem a seguinte forma funcional:

\[S(t_i) = S(t_{i-1})(1-\frac{d_i}{n_i})\]

Onde \(n_i\) é o número de empregados até \(t_i\), \(d_i\) é o número de demissões em \(t_i\). Antes de computar isso, vamos explorar nossa amostra.

Amostra

Vamos usar dados anonimizados da RAIS de 2017, mais especificamente do Acre. Já tive o trabalho de limpa-los e deixei o arquivo `.Rdata disponível no repositório do AZUL no github. Você pode puxar os dados diretamente do repositório pelo pacote `repmis, deixo como exercício ao leitor o código que faz isso. Vamos explorar a amostra.

library(ggplot2)
library(dplyr)
library(scales)


dados %>%
  ggplot(aes(x = Idade)) +
  geom_histogram(fill = "#325ce7", binwidth = 1) 

dados %>%
  ggplot(aes(x = salario)) +
  geom_histogram(aes(y=..density..), fill = "#325ce7", binwidth = 50) +
  scale_y_continuous(labels = percent) +
  xlim(0, 10000)

dados %>%
  ggplot(aes(x = salario, fill = sexo)) +
  geom_histogram(binwidth = 50) +
  xlim(0, 10000)

dados %>%
  ggplot(aes(x = salario, fill = Graduacao)) +
  geom_histogram(binwidth = 50) +
  xlim(0, 10000)

dados %>%
  ggplot(aes(x = salario)) +
  geom_histogram(fill = "#325ce7", binwidth = 50) +
  xlim(0, 10000)+
  facet_wrap(~etnia)

dados %>%
  ggplot(aes(x = salario)) +
  geom_histogram(aes(y=..density..), fill = "#325ce7", binwidth = 150) +
  scale_y_continuous(labels = percent) +
  xlim(0, 10000)+
  facet_wrap(~setor)

Agora podemos começar a brincar mais e tentar encaixar curvas de sobrevivência aqui. Temos ferramentas para estima-las no pacote survival e podemos visualizar com o pacote survminerque implementa uma viz baseada em ggplot2.

library(survival)

fit_sexo = survfit(Surv(tempo_emprego, demissao) ~ sexo, data = dados)
fit_setor = survfit(Surv(tempo_emprego, demissao) ~ setor, data = dados)
fit_ensinosuperior = survfit(Surv(tempo_emprego, demissao) ~ Graduacao, data = dados)
fit_etnia = survfit(Surv(tempo_emprego, demissao) ~ etnia, data = dados)

library(survminer)

ggsurvplot(fit_sexo, conf.int = TRUE,
          palette = c("#91aded", "#e1476b"))

ggsurvplot(fit_setor, conf.int = TRUE)

ggsurvplot(fit_ensinosuperior, conf.int = TRUE)

ggsurvplot(fit_etnia, conf.int = TRUE)

Como esperado, trabalhadores agrícolas tem empregos mais curtos, diplomas de ensino superior normalmente levam a empregos mais longos e negros têm rotatividade maior.

O modelo de Riscos Proporcionais de Cox